package cn.mandifal.cart.service;

import cn.mandifal.pojo.Cart;

import java.util.List;

/**
 * 购物车服务接口
 * @author shun
 */
public interface CartService {
    /**
     * 添加商品到购物车
     * @param cartList
     * @param itemId 商品 id
     * @param num 数量
     * @return
     */
    public List<Cart> addGoodsToCartList(List<Cart> cartList,Long itemId,Integer num );

    /**
     * 从redis中查询购物车
     * @param username 所登录用户名
     * @return
     */
    public List<Cart> findCartListFromRedis(String username);

    /**
     * 将购物车列表保存到redis
     * @param username  所登录用户名
     * @param cartList redis 中存购物车列表的 key
     */
    public void saveCartListToRedis(String username,List<Cart> cartList);

    /**
     * 合并购物车
     * @param cartList1
     * @param cartList2
     * @return 返回合并后的购物车
     */
    public List<Cart> mergeCartList(List<Cart> cartList1,List<Cart> cartList2);

}
